
export default {
  inserted(el, binding, vnode) {
    const { value } = binding
    if (localStorage.getItem('roles')) {
      const roles = JSON.parse(localStorage.getItem('roles'))

      if (value && value instanceof Array && value.length > 0) {
        const permissionRoles = value

        const hasPermission = roles.some(role => {
          return permissionRoles.includes(role)
        })

        if (!hasPermission) {
          el.parentNode && el.parentNode.removeChild(el)
        }
      } else {
        throw new Error(`need roles!`)
      }
    } else {
      el.parentNode && el.parentNode.removeChild(el)
    }
  }
}
